A computer network is a collection of interconnected computing devices that can exchange data and share resources. Example network devices include layer two devices that operate within the second layer (L2) of the Open Systems Interconnection (OSI) reference model, i.e., the data link layer, and layer three devices that operate within the third layer (L3) of the OSI reference model, i.e., the network layer. Network devices within computer networks often include a control unit that provides control plane functionality for the network device and forwarding components for routing or switching data units.
An Ethernet Virtual Private Network (EVPN) may be used to extend two or more remote layer two (L2) customer networks through an intermediate layer three (L3) network (usually referred to as a provider network), in a transparent manner, i.e., as if the intermediate L3 network does not exist. In particular, the EVPN transports L2 communications, such as Ethernet packets or “frames,” between customer networks via traffic engineered label switched paths (LSP) through the intermediate network in accordance with one or more multiprotocol label switching (MPLS) protocols. In a typical configuration, provider edge (PE) network devices (e.g., routers and/or switches) coupled to the customer edge (CE) network devices of the customer networks define label switched paths (LSPs) within the provider network to carry encapsulated L2 communications as if these customer networks were directly attached to the same local area network (LAN). In some configurations, the PE network devices may also be connected by an IP infrastructure in which case IP/GRE tunneling or other IP tunneling can be used between the network devices.
As the PE network devices in an EVPN forward Ethernet frames, the PE network devices learn L2 state information for the L2 customer networks. The L2 state information may include media access control (MAC) addressing information for the CE network devices and customer equipment within the customer network and the physical ports of the PE network device through which the customer devices are reachable. The PE network devices typically store the MAC addressing information in L2 learning tables associated with each of their physical interfaces. When switching an individual Ethernet frame having a given destination MAC address, a PE network device typically broadcasts the Ethernet frame to all of its physical ports unless the PE network device has previously learned the specific physical port through which to the destination MAC address is reachable. In this case, the PE network device forwards a single copy of the Ethernet frame out the associated physical port.
In an EVPN, MAC learning between PE network devices occurs in the control plane using a routing protocol rather than in the data plane (as happens with traditional L2 bridging/switching). For example, in EVPNs, a PE network device typically uses the Border Gateway Protocol (BGP) (i.e., an L3 routing protocol) to advertise to other provider edge network devices the MAC addresses learned from the local consumer edge network devices to which the PE network device is connected. A PE device may use BGP route advertisement message to announce reachability information for the EVPN, where the BGP route advertisement specifies one or more MAC addresses learned by the PE network device instead of L3 routing information.
In some examples, a remote PE network device may be multi-homed to first and second PE network devices in an EVPN. The first and second PE network devices are further configured as a part of the same Ethernet Segment. Initially, the first and second PE network devices may advertise Auto-Discovery (AD) routes to the remote PE network device that announce the reachability of the respective PE network devices in the Ethernet Segment. Each AD route advertisement may include different types of information, such as an MPLS label. The remote PE network device may configure its forwarding next hops to use the MPLS label from the AD route advertisement when forwarding Ethernet frames to the respective PE network devices.
At a later time, the first PE network device may learn a MAC route and advertise the MAC route to the remote PE network device. The MAC route advertisement may include different types of information, such as a learned MAC address and an MPLS label. In some examples, the MPLS label of the MAC route advertisement is different than the MPLS label of the AD route advertisement initially sent by the first PE network device to the remote PE network device. Consequently, the remote PE network device may update its forwarding next hops to use the MPLS label from the MAC route advertisement when forwarding Ethernet Frames to the first PE network device in the Ethernet Segment. The process of the remote PE network device updating its forwarding next hops to the new MPLS label for the first PE network device may result in traffic loss and/or cause additional control and forwarding plane processing. Furthermore, if the first PE network device later sends a MAC route withdrawal advertisement (e.g., due to MAC aging or a link failure), the remote PE network device will update its forwarding next hops to use the MPLS label initially included in the AD route advertisement previously sent by the first PE network device. This process performed by the remote PE network device to update its forwarding next hops to the previous MPLS label may also result in traffic loss and/or cause additional control and forwarding plane processing at the remote PE network device.